package org.dromara.system.domain.bo;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

import java.io.Serializable;
import java.math.BigDecimal;

@Data
public class PayOrderStatusBo implements Serializable {

    /**
     * 订单ID
     */
    @NotNull(message = "订单ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long orderId;

    /**
     * 更新类型 1：支付状态  2：退款状态 3：争议状态
     */
    @NotNull(message = "更新类型不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer type;

    /**
     * 状态值
     */
    @NotNull(message = "状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer status;

    /**
     * 是否推送退款状态到平台
     */
    private Boolean pushRefund = Boolean.FALSE;

    /**
     * 退款金额
     */
    private BigDecimal refundMoney;

    /**
     * 是否推送A端订单状态
     */
    private Boolean pushA = Boolean.FALSE;

    /**
     * 争议备注
     */
    private String disputeRemark;

}
